/**
 * some test style
 * 不要把测试用的 css 放到核心样式中去
 */
.map-icon {
  position: relative;

  .blue {
    height: 32px;
    width: 64px;
    z-index: 1;
    left: 0;
    top: 0;
    position: absolute;
    background-color: lightblue;
  }

  .pink {
    height: 32px;
    width: 64px;
    z-index: 2;
    left: 0;
    top: 32px;
    position: absolute;
    background-color: lightpink;
  }
}


/**
 * 加载遮罩层
 * ----------------------
 */
.sea-loading {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  border: 3px solid;
  border-color: lightgrey lightgrey transparent transparent;
  -webkit-animation: sea-rotation 1s linear infinite;
  animation: sea-rotation 1s linear infinite;
}

.sea-loading:before {
  width: 32px;
  height: 32px;
  border-color: lightgrey lightgrey transparent transparent;
  -webkit-animation: sea-rotation 1.5s linear infinite;
  animation: sea-rotation 1.5s linear infinite;
}

.sea-loading:after, .sea-loading:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 3px solid;
  border-color: transparent transparent #FF3D00 #FF3D00;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  -webkit-animation: sea-rotation-back 0.5s linear infinite;
  animation: sea-rotation-back 0.5s linear infinite;
  transform-origin: center center;
}


// 可选动画
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/**
 * 一个带扩散动画效果的圆点
 *
 * 用于 GIS 开发中地图上的警告
 */
@keyframes animate {
  0% {
    transform: scale(0.3);
  }
  100% {
    transform: scale(1);
  }
}

.animate-overlay {
  width: 30px;
  height: 30px;
  background: radial-gradient(circle, red, rgba(255, 0, 0, 0));
  //border: 1px solid red;
  border-radius: 50%;
  animation: 1s animate infinite;
}

/**
 * 面板收缩淡出
 * ----------------------
 * 限制条件：缩放过程中，组件位置发生强烈变化，容易导致界面抖动
 */


/**
 * 鼠标悬浮时，文字旋转
 * -------------------------
 */
.anim-scale {
  display: inline-block;
}

/* 鼠标悬停时触发旋转动画 */
.anim-scale:hover {
  animation: scaleIn 0.5s forwards; /* forwards 保持动画结束状态 */
}








.anim-div {
  transition: opacity 3s ease;

  &.hidden {
    opacity: 0;
    pointer-events: none; /* 避免隐藏时交互 */
  }

  &.visible {
    opacity: 1;
  }
}







